#ifndef DW_MATHS_CUBOID_H
#	define DW_MATHS_CUBOID_H

#include "maths/point.h"

namespace dw {
	namespace maths {

struct Cuboid
{
// Constructors
public:

	Cuboid();

	Cuboid(const Point3f& center, const float width, const float height, const float depth);

	Cuboid(const Point3f& center, const Vector3f& size);

	Cuboid(const Point3f& min, const Point3f& max);

// Fields
public:

	Point3f center;

	union
	{

		struct
		{
			float width;
			float height;
			float depth;
		};
		struct
		{
			Vector3f size;
		};
	};

};

typedef Cuboid Box;

	} // namespace maths
} // namespace dw 

#endif // !DW_MATHS_CUBOID_H
